package com.cloudkinto.service.order.vo.shopify;

import com.baomidou.mybatisplus.annotation.TableField;
import com.cloudkinto.common.utils.StringsUtil;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @author fanp
 * @version v1.0.0
 * @Description :
 * @Create on : 2021/9/23 11:07
 **/
@Data
@ApiModel
public class OrderShopifyRes {
    private Long id;

    @ApiModelProperty("店铺id")
    private Long shopId;

    @ApiModelProperty("店铺")
    private String shopName;

    @ApiModelProperty("公司id")
    private Long companyId;

    /**
     * 订单号
     */
    @ApiModelProperty("订单号")
    private Long orderNumber;

    /**
     * 订单ID
     */
    @ApiModelProperty("订单id")
    private Long orderId;

    /**
     * 花费金额
     */
    @TableField("total_price_usd")
    private Double totalPriceUsd;

    /**
     * 总金额
     */
    @ApiModelProperty("总金额")
    private Double totalPrice;

    /**
     * 小计金额
     */
    @ApiModelProperty("小计金额")
    private Double subtotalPrice;

    /**
     * 参考信息
     */
    @ApiModelProperty("参考信息")
    private String reference;

    /**
     * 数量
     */
    @ApiModelProperty("数量")
    private Integer number;

    /**
     * 税费
     */
    @TableField("税费")
    private BigDecimal totalTax;

    /**
     * 总折扣
     */
    @ApiModelProperty("总折扣")
    private BigDecimal totalDiscounts;

    /**
     * 联系电话
     */
    @ApiModelProperty("联系电话")
    private String phone;

    /**
     * 订单名称
     */
    @ApiModelProperty("订单名称")
    private String orderName;

    /**
     * 是否含税
     */
    @ApiModelProperty("是否含税")
    private String taxesIncluded;

    /**
     * 是否确认
     */
    @ApiModelProperty("是否确认")
    private String confirmed;

    /**
     * 联系邮箱
     */
    @ApiModelProperty("联系邮箱")
    private String contactEmail;

    /**
     * 联系邮箱
     */
    @ApiModelProperty("联系邮箱")
    private String email;

    /**
     * 币种
     */
    @ApiModelProperty("币种")
    private String currency;

    /**
     * 发货状态
     */
    @ApiModelProperty("发货状态")
    private String fulfillmentStatus;

    /**
     * 付款状态
     */
    @ApiModelProperty("付款状态")
    private String financialStatus;

    /**
     * 收货地邮编
     */
    @ApiModelProperty("收货地邮编")
    private String shippingZip;

    /**
     * 收货地国家code
     */
    @ApiModelProperty("收货地国家code")
    private String shippingCountryCode;

    /**
     * 收货地城市
     */
    @ApiModelProperty("收货地城市")
    private String shippingCity;

    /**
     * 收货地省
     */
    @ApiModelProperty("收货地省")
    private String shippingProvince;

    /**
     * 收货地址
     */
    @ApiModelProperty("收货地址")
    private String shippingAddress;

    /**
     * 收货联系电话
     */
    @ApiModelProperty("收货联系电话")
    private String shippingPhone;

    /**
     * 收货人
     */
    @ApiModelProperty("收货人")
    private String shippingName;

    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    private Date createdAt;

    /**
     * 更新时间
     */
    @ApiModelProperty("updated_at")
    private Date updatedAt;

    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    private Date processedAt;

    /**
     * 是否转发货
     */
    @ApiModelProperty("is_send_out")
    private Integer isSendOut;

    /**
     * 是否上传单号
     */
    @ApiModelProperty("is_upload_express")
    private Integer isUploadExpress;

    /**
     * 系统备注
     */
    @ApiModelProperty("系统备注")
    private String systemMemo;

    private String sku;

    public String getFulfillmentStatus() {
        return StringsUtil.createI18Message(fulfillmentStatus);
    }

    public String getFinancialStatus() {
        return StringsUtil.createI18Message(financialStatus);
    }
}
